/*******************************************************************************
 * 版权：北京润尼尔网络科技有限公司，保留所有版权<br>
 * 版本：v1.0.0<br>
 * 文件：UICompositeSearchBox.js<br>
 * 日期：2016年8月9日<br>
 * 作者: 杨顺强<br>
 * 功能：<br>
 * 
 * 修改记录：<br>
 * 日期 描述 更新功能<br>
 ******************************************************************************/

window.makeNamespace(window,"Rainier.UI.V2");


/**
 * 类型名称：Rainier.UI.V2.UICompositeSearchBox<br>
 * 类型功能：创建搜索框<br>
 */
Rainier.UI.V2.UICompositeSearchBox = Rainier.UI.V2.UIComposite.extend({
	
	NAME : "Rainier.UI.V2.UICompositeSearchBox",
	
	/**
	 * 函数名称：Rainier.UI.V2.UICompositeSearchBox.init<br>
	 * 函数功能：构造函数<br>
	 * 参数输入：objParentComposite  	父组件实例<br>
	 * 参数输入：objProperties		 	组件属性定义<br>	
	 * 异常信息：<br>
	 */
	init : function(objParentComposite,objProperties){
		//使用父类初始化子类对象
		this._super(objParentComposite,objProperties);
	},
	
	/**
	 * 函数名称：Rainier.UI.V2.UICompositeSearchBox.appendEventHandler<br>
	 * 函数功能：添加事件代理<br>
	 * 参数输入：无<br>
	 * 参数输出：无<br>
	 * 函数返回：无<br>
	 * 异常信息：<br>
	 */	
	appendEventHandler : function(){
		this._super();		
	},
	
	/**
	 * 函数名称：Rainier.UI.V2.UICompositeSearchBox.createComposite<br>
	 * 函数功能：创建组件<br>
	 * 参数输入：eleParent : 父组件的节点元素<br>
	 * 函数返回：无<br>
	 * 异常信息：无<br>
	 */
	createComposite : function(eleParent){
		this._super(eleParent);		
		var newEle = this.CreateElement("input",this.m_objProperties.id);
		eleParent.append(newEle);
		newEle.searchbox(this.m_objProperties);
	},
	
	/**
	 * 函数名称：Rainier.UI.V2.UICompositeSearchBox.callUiMethod<br>
	 * 函数功能：添加事件代理<br>
	 * 参数输入：sMethod 方法名称
	 * 参数输入：objArgs 方法参数
	 * 函数返回：无<br>
	 * 异常信息：<br>
	 */
	callUiMethod : function(sMethod,objArgs){
		return this.getElement().searchbox(sMethod,objArgs);
	},
	
	/**
	 * 函数名称：Rainier.UI.V2.UICompositeSearchBox.options<br>
	 * 函数功能：返回选项（options）对象<br>
	 * 参数输入：无<br>
	 * 参数输出：无<br>
	 * 函数返回：无<br>
	 * 异常信息：无<br>
	 */
	options : function(){
		return this.getElement().searchbox('options');
	},
	
	/**
	 * 函数名称：Rainier.UI.V2.UICompositeSearchBox.menu<br>
	 * 函数功能：返回搜索类型的菜单对象。<br>
	 * 参数输入：无<br>
	 * 参数输出：无<br>
	 * 函数返回：无<br>
	 * 异常信息：无<br>
	 */
	menu : function(){
		return this.getElement().searchbox("menu");
	},
	
	
	/**
	 * 函数名称：Rainier.UI.V2.UICompositeSearchBox.menu<br>
	 * 函数功能：返回文本框对象。<br>
	 * 参数输入：无<br>
	 * 参数输出：无<br>
	 * 函数返回：无<br>
	 * 异常信息：无<br>
	 */
	textbox : function(){
		return this.getElement().searchbox('textbox');
	},
	
	/**
	 * 函数名称：Rainier.UI.V2.UICompositeSearchBox.menu<br>
	 * 函数功能：返回当前的搜索值。<br>
	 * 参数输入：无<br>
	 * 参数输出：无<br>
	 * 函数返回：无<br>
	 * 异常信息：无<br>
	 */
	getValue : function(){
		return this.getElement().searchbox('getValue');
	},
	
	/**
	 * 函数名称：Rainier.UI.V2.UICompositeSearchBox.menu<br>
	 * 函数功能：设置新的搜索值。<br>
	 * 参数输入：value	新的搜索值<br>
	 * 参数输出：无<br>
	 * 函数返回：无<br>
	 * 异常信息：无<br>
	 */
	setValue : function(value){
		return this.getElement().searchbox('setValue',value);
	},
	
	/**
	 * 函数名称：Rainier.UI.V2.UICompositeSearchBox.menu<br>
	 * 函数功能：返回当前的搜索类型名称。<br>
	 * 参数输入：无<br>
	 * 参数输出：无<br>
	 * 函数返回：无<br>
	 * 异常信息：无<br>
	 */
	getName : function(){
		return this.getElement().searchbox('getName');
	},
	
	/**
	 * 函数名称：Rainier.UI.V2.UICompositeSearchBox.menu<br>
	 * 函数功能：选择当前的搜索类型名称。<br>
	 * 参数输入：selectName	搜索类型名称<br>
	 * 参数输出：无<br>
	 * 函数返回：无<br>
	 * 异常信息：无<br>
	 */
	selectName : function(selectName){
		return this.getElement().searchbox('selectName',selectName);
	},
	
	/**
	 * 函数名称：Rainier.UI.V2.UICompositeSearchBox.menu<br>
	 * 函数功能：销毁该组件。<br>
	 * 参数输入：无<br>
	 * 参数输出：无<br>
	 * 函数返回：无<br>
	 * 异常信息：无<br>
	 */
	destroy : function(){
		return this.getElement().searchbox('destroy');
	},
	
	/**
	 * 函数名称：Rainier.UI.V2.UICompositeSearchBox.menu<br>
	 * 函数功能：重设组件的宽度。<br>
	 * 参数输入：width	组件宽度<br>
	 * 参数输出：无<br>
	 * 函数返回：无<br>
	 * 异常信息：无<br>
	 */
	resize : function(width){
		return this.getElement().searchbox('resize',width);
	},
	
	/**
	 * 函数名称：Rainier.UI.V2.UICompositeSearchBox.menu<br>
	 * 函数功能：禁用搜索框。<br>
	 * 参数输入：无<br>
	 * 参数输出：无<br>
	 * 函数返回：无<br>
	 * 异常信息：无<br>
	 */
	disable : function(){
		return this.getElement().searchbox('disable');
	},
	
	/**
	 * 函数名称：Rainier.UI.V2.UICompositeSearchBox.menu<br>
	 * 函数功能：启用搜索框。<br>
	 * 参数输入：无<br>
	 * 参数输出：无<br>
	 * 函数返回：无<br>
	 * 异常信息：无<br>
	 */
	enable : function(){
		return this.getElement().searchbox('enable');
	},
	
	/**
	 * 函数名称：Rainier.UI.V2.UICompositeSearchBox.menu<br>
	 * 函数功能：清除搜索值。<br>
	 * 参数输入：无<br>
	 * 参数输出：无<br>
	 * 函数返回：无<br>
	 * 异常信息：无<br>
	 */
	clear : function(){
		return this.getElement().searchbox('clear');
	},
	
	/**
	 * 函数名称：Rainier.UI.V2.UICompositeSearchBox.menu<br>
	 * 函数功能：重设搜索值。<br>
	 * 参数输入：无<br>
	 * 参数输出：无<br>
	 * 函数返回：无<br>
	 * 异常信息：无<br>
	 */
	reset : function(){
		return this.getElement().searchbox('reset');
	}
});